Networks, such as the Internet, have numerous networking and computing machines that are involved in transmitting data between machines in the network. One such networking machine is the router. A router is highly complex piece of networking equipment that directs data packets through a network from one machine to another. Generally speaking, a router receives packets of data, determines the destination for those data packets, and then transmits the data packets to the correct port that is connected with the destination or the next stop on a path to the destination. There are numerous decisions and computations involved with determining the next hop on the path to the destination and the router makes those decisions for enormous amounts of data every second. A switch is a similar type networking device that directs packets of data through a network, albeit some switches may make fewer and less sophisticated decisions as to the next hop for a data packet. Regardless, both routers and switches are highly sophisticated and complex pieces of networking equipment.
Conventional routers and switches are typically sold as a vertically integrated device, with a full computer hardware solution integrated with a full software suite. While providing excellent functionality, such vertically integrated devices are very expensive. Moreover, such vertically integrated devices do not provide network providers with the capability to customize the router or switch, to deploy a lighter weight device (one with less software, for example), or to otherwise customize the device or provide unique services or rates within the network.
It is with these inadequacies and concerns in mind, among others, that various aspects of the present disclosure were conceived and developed.